//该文件包括
//验证方法
//全选方法



var specialChartList = new Array();
specialChartList[0] = '`';	specialChartList[1] = '~';	specialChartList[2] = '!';	specialChartList[3] = '@';
specialChartList[4] = '#';	specialChartList[5] = '$';	specialChartList[6] = '%';	specialChartList[7] = '^';
specialChartList[8] = '&';	specialChartList[9] = '*';	specialChartList[10] = '(';	specialChartList[11] = ')';
specialChartList[12] = '-';	specialChartList[13] = '=';	specialChartList[14] = '+';	specialChartList[15] = '\\';
specialChartList[16] = '|';	specialChartList[17] = ',';	specialChartList[18] = '<';	specialChartList[19] = '>';
specialChartList[20] = '.';	specialChartList[21] = '?';	specialChartList[22] = '\/';specialChartList[23] = '\'';
specialChartList[24] = '"';	specialChartList[25] = ':';	specialChartList[26] = ';';	specialChartList[27] = ']';
specialChartList[28] = '[';	specialChartList[29] = '{';	specialChartList[30] = '}';

/**
* 判断字符串长度是否在min到max之间（包含min和max）
*/
function isStringInLength(str,min,max){
	if(str.length >= min && str.length <= max){
		return true;
	}
	return false;
}

/**
 * 判断字符串是否是空字符串,是返回true，不是返回false
 */
function isNullString(str){
	if(str.length == 0 || str == 'null' || str == 'undefined'){
		return true;
	}
	return false;
}

/**
 * 验证一个字符串中是否全部是数值，如果有一个不是就返回false，反之返回true
 */
function isAllNumber(str){
	for(var i = 0;i < str.length;i++){
		if(isNaN(str.charAt(i))){
			return false;
		}
	}
	return  true;
}

/**
 * 验证字符串是否含有特殊字符，只要有一个就返回ture，一个都没有返回false
 * 不能包含有任何的特殊字符
 */
function hasSpecialChart(str){
	for(var i = 0;i < specialChartList.length;i++){
		if(str.indexOf(specialChartList[i]) != -1){
			return true;
		}
	}
	return false;
}

/**
 * 判断字符串中是否含有空格，有返回true，没有返回false
 */
function hasBlank(str){
	if(str.indexOf(" ") != -1){
		return true;		
	}
	return false;
}

/**
 * 判断是否是正确的邮箱格式，正确返回true，不正确返回false
 * 注释：如果邮件地址为空返回false
 */
function isEmail(str){
	if(!isNullString(str)){
		return (/^\w+([-+.]\w+)*@\w+([-.]\\w+)*\.\w+([-.]\w+)*$/).test(str);
	}else{
		return false;
	}
}

function isPhone(str){
	if(!isNullString(str)){
		return (/^[-0-9]+$/).test(str)
	}else{
		return false;
	}
}

function isMoney(str){
	if(!isNullString(str)){
		return (/^[0-9]+(\.[0-9]{1,2})?$/).test(str);
	}else{
		return false;
	}
}


//下拉列表是否为空
function ValidateSelect(select_id){
  var select_id=document.getElementById(select_id);
  if(select_id!=null){
    if(select_id.value==""){    
      select_id.focus();
      return false;
    }
    else{
      return true;
    }
  }
}

//验证日期  如：1980/07/17或1980-07-17
function ValidateDate(date_id){
	var date_t=document.getElementById(date_id);
	var INDate=date_t.value.toString();
	if (INDate=="")
    {return true;}
 subYY=INDate.substr(0,4)
 if(isNaN(subYY) || subYY<=0){
  return true;
 }
 //转换月份
 if(INDate.indexOf('-',0)!=-1){ separate="-"}
 else{
  if(INDate.indexOf('/',0)!=-1){separate="/"}
  else {return true;}
  }
  area=INDate.indexOf(separate,0)
  subMM=INDate.substr(area+1,INDate.indexOf(separate,area+1)-(area+1))
  if(isNaN(subMM) || subMM<=0){
  return true;
 }
  if(subMM.length<2){subMM="0"+subMM}
 //转换日
 area=INDate.lastIndexOf(separate)
 subDD=INDate.substr(area+1,INDate.length-area-1)
 if(isNaN(subDD) || subDD<=0){
  return true;
 }
 if(eval(subDD)<10){subDD="0"+eval(subDD)}
 NewDate=subYY+"-"+subMM+"-"+subDD
 if(NewDate.length!=10){return true;}
    if(NewDate.substr(4,1)!="-"){return true;}
    if(NewDate.substr(7,1)!="-"){return true;}
 var MM=NewDate.substr(5,2);
 var DD=NewDate.substr(8,2);
 if((subYY%4==0 && subYY%100!=0)||subYY%400==0){ //判断是否为闰年
  if(parseInt(MM)==2){
   if(DD>29){return true;}
  }
 }else{
  if(parseInt(MM)==2){
   if(DD>28){return true;}
  } 
 }
 var mm=new Array(1,3,5,7,8,10,12); //判断每月中的最大天数
 for(i=0;i< mm.length;i++){
  if (parseInt(MM) == mm[i]){
   if(parseInt(DD)>31){return true;}
  }else{
   if(parseInt(DD)>30){return true;}
  }
 }
 if(parseInt(MM)>12){return true;}
   return false;
}


//验证小于10的小数，小数点后保留2位小数
function ValidateFloat(float_id){
	var float_id=document.getElementById(float_id);
	var i;
	var fettle=0;
	var float_arr=new Array(float_id.value.toString().length);
	for(i=0;i<float_id.value.toString().length;i++){
		float_arr[i]=float_id.value.toString().substr(i,1);
	}
	if(float_arr[1]=="."){
		fettle=1;	
	}
	if(!isNaN(float_id.value.toString())){
		if(parseFloat(float_id.value.toString())<10&&fettle==1){
			return true;	
		}	
		else{
			return false;	
		}
	}
}

//是否是数字(适用于电话验证)
function ValidatePhone(num_id){
	var num_id=document.getElementById(num_id);
	var num_str=num_id.value.toString();
	var i;
	var fettle=1;
	var text_arr=new Array(num_str.length);
	for(i=0;i<num_str.length;i++){
		text_arr[i]=num_str.substr(i,1);
	}
	for(i=0;i<num_str.length;i++){
		if(isNaN(text_arr[i])&&text_arr[i]!="-"){
			fettle=0;
			break;
		}	
	}
	if(fettle==1){
		return true;	
	}
	else if(fettle==0){
		return false;	
	}
}

//验证邮箱
function ValidateMail(mail_id){
	var mail_id=document.getElementById(mail_id);
	var mail_str=mail_id.value.toString();
	var i;
	var fettle=0;
	var mail_arr=new Array(mail_str.length);
	for(i=0;i<mail_str.length;i++){
		mail_arr[i]=mail_str.substr(i,1);
	}
	for(i=0;i<mail_str.length;i++){
		if(mail_arr[i]=="@"){
			fettle=1;	
		}	
	}
	if(fettle==0){
		return false;	
	}
	else{
		return true;	
	}
	
}

//是否是数字(适用于邮政编码验证)
function ValidatePost(num_id){
	var num_id=document.getElementById(num_id);
	var num_str=num_id.value.toString();
	if(num_str.length!=6){
	var i;
	var fettle=1;
	var text_arr=new Array(num_str.length);
	for(i=0;i<num_str.length;i++){
		text_arr[i]=num_str.substr(i,1);
	}
	for(i=0;i<num_str.length;i++){
		if(isNaN(text_arr[i])){
			fettle=0;
			break;
		}	
	}
	if(fettle==1){
		return true;	
	}
	else if(fettle==0){
		return false;	
	}
	}
	else{
		return false;	
	}
}

//是否是数字(适用于手机验证)
function ValidateNan(num_id){
	var num_id=document.getElementById(num_id);
	var num_str=num_id.value.toString();
	var i;
	var fettle=1;
	var text_arr=new Array(num_str.length);
	for(i=0;i<num_str.length;i++){
		text_arr[i]=num_str.substr(i,1);
	}
	for(i=0;i<num_str.length;i++){
		if(isNaN(text_arr[i])){
			fettle=0;
			break;
		}	
	}
	if(fettle==1){
		return true;	
	}
	else if(fettle==0){
		return false;	
	}
}

//判断两次输入的内容是否相等
function ValidateEquel(id_1,id_2){
	var id_1=document.getElementById(id_1);
	var id_2=document.getElementById(id_2);
	if(id_1.value==id_2.value){
		return true;
	}
	else{
		return false;
	}
}

//文本框是否为空
function ValidateText(text_id){
  var txtName=document.getElementById(text_id);
  if(txtName.value==""){
    txtName.focus();
    return false;
  }
  else{
    return true;
  }
}

//比较日期
function ValidateDateCmp(txt_from,txt_to,div_date){
  var txtFrom=document.getElementById(txt_from);
  var txtTo=document.getElementById(txt_to);
  var divDate=document.getElementById(div_date);
  if(txtFrom.value>=txtTo.value){
    return false;
  }
  else{
    return true;
  }
}

//文本框输入是否过长
function Limit(txt_id,count){
  var txt=document.getElementById(txt_id);
  if(txt.value.length>count-1){
    txt.value=txt.value.substr(0,count);
    return false;
  }
  else{
    return true;
  }
}

//身份证验证
function checkIdcard(idcard){
  var Errors=new Array("true","身份证号码位数不对!","出生日期超出范围或含有非法字符!","身份证号码校验错误!","身份证地区非法!");
  var area={11:"北京",12:"天津",13:"河北",14:"山西",15:"内蒙古",21:"辽宁",22:"吉林",23:"黑龙江",31:"上海",32:"江苏",33:"浙江",34:"安徽",35:"福建",36:"江西",37:"山东",41:"河南",42:"湖北",43:"湖南",44:"广东",45:"广西",46:"海南",50:"重庆",51:"四川",52:"贵州",53:"云南",54:"西藏",61:"陕西",62:"甘肃",63:"青海",64:"宁夏",65:"新疆",71:"台湾",81:"香港",82:"澳门",91:"国外"}
  var idcard,Y,JYM;
  var S,M;
  var idcard_array = new Array();
  idcard_array = idcard.split("");
  if(area[parseInt(idcard.substr(0,2))]==null) return Errors[4];
  switch(idcard.length){
    case 15:
      if ( (parseInt(idcard.substr(6,2))+1900) % 4 == 0 || ((parseInt(idcard.substr(6,2))+1900) % 100 == 0 && (parseInt(idcard.substr(6,2))+1900) % 4 == 0 )){
        ereg=/^[1-9][0-9]{5}[0-9]{2}((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|[1-2][0-9]))[0-9]{3}$/;
      }
      else {
        ereg=/^[1-9][0-9]{5}[0-9]{2}((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|1[0-9]|2[0-8]))[0-9]{3}$/;
      }
      if(ereg.test(idcard)) return Errors[0];
      else return Errors[2];
      break;
    case 18:    
      if ( parseInt(idcard.substr(6,4)) % 4 == 0 || (parseInt(idcard.substr(6,4)) % 100 == 0 && parseInt(idcard.substr(6,4))%4 == 0 )){
        ereg=/^[1-9][0-9]{5}19[0-9]{2}((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|[1-2][0-9]))[0-9]{3}[0-9Xx]$/;
      } 
      else {
        ereg=/^[1-9][0-9]{5}19[0-9]{2}((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|1[0-9]|2[0-8]))[0-9]{3}[0-9Xx]$/;
      }
      if(ereg.test(idcard)){
        S = (parseInt(idcard_array[0]) + parseInt(idcard_array[10])) * 7
        + (parseInt(idcard_array[1]) + parseInt(idcard_array[11])) * 9
        + (parseInt(idcard_array[2]) + parseInt(idcard_array[12])) * 10
        + (parseInt(idcard_array[3]) + parseInt(idcard_array[13])) * 5
        + (parseInt(idcard_array[4]) + parseInt(idcard_array[14])) * 8
        + (parseInt(idcard_array[5]) + parseInt(idcard_array[15])) * 4
        + (parseInt(idcard_array[6]) + parseInt(idcard_array[16])) * 2
        + parseInt(idcard_array[7]) * 1 
        + parseInt(idcard_array[8]) * 6
        + parseInt(idcard_array[9]) * 3 ;
        Y = S % 11;
        M = "F";
        JYM = "10X98765432";
        M = JYM.substr(Y,1);
        if(M == idcard_array[17]) return Errors[0]; 
        else return Errors[3];
      }
      else return Errors[2];
    break;
    default:
      return Errors[1];
    break;
  }
}


//全选
function checkAll(formName,chkHeader){
		var objForm = document.forms[formName];		
		var objLen = objForm.length;
  		for(var iCount = 0; iCount < objLen; iCount++){
  		
 		if(chkHeader.checked === true){
 			if(objForm.elements[iCount].type == "checkbox" && objForm.elements[iCount].name != 'chkbx_all'){
  				objForm.elements[iCount].checked = true;  				
  				//eval(formName+'.chkbx_' + objForm.elements[iCount].name).value='SELECTED';
  			}
 		}else{
  			if(objForm.elements[iCount].type == "checkbox" && objForm.elements[iCount].name != 'chkbx_all'){
 				objForm.elements[iCount].checked = false;
 				//eval(formName+'.chkbx_' + objForm.elements[iCount].name).value='UNSELECTED';
  			}
  		}
 	
  	}
}
function checkState(formName,ckbox){
     var objForm = document.forms[formName];	
     if(ckbox.checked===false){
         document.getElementsByName("chkbx_all")[0].checked=false;
     }
}
function trim(s){
   return s.replace(/^\s*/,"").replace(/\s*$/,"");
}
